The present invention relates to a system and method for creating and sending electronic mail, and more particularly relates to a system and method for simplifying the processes of resolving recipient names, indicating action items, utilizing custom forms, and tallying replies from a group of recipients.
Electronic mail, or e-mail, is a service that transmits electronic messages from one computer to another. These messages may be simple text messages or more complex messages containing documents and data of various types. The transmission of e-mail messages may range from transmission over a short distance, such as over a local area network between employees in adjoining offices, to. transmission over extremely long distances, such as over the global Internet between users on different continents.
Generally, to send an e-mail message via an e-mail system, a user opens an e-mail program module and types a message and other information into an e-mail form. The e-mail form contains a number of fields for the recipients"" addresses, the subject of the message, and the message itself. The user may also attach separate files to the e-mail message. Before sending the e-mail message, the user must enter the recipient""s e-mail address, which is used by the e-mail system to route the message to the intended recipient.
After composing an e-mail message and entering the recipient""s address, the user sends the message by invoking a xe2x80x9csendxe2x80x9d command. The e-mail system then sends the message to the recipient. At the recipient""s computer, the recipient typically will receive a visual or auditory cue, such as a ringing bell, when an e-mail message has been received in the recipient""s inbox. The recipient may then open the e-mail program and view a list of the messages in the inbox. The recipient may view the complete text of a message by selecting and opening that message.
E-mail is becoming increasingly popular because it is a quick, convenient, and easy way to exchange information and communicate with others. E-mail offers numerous advantages over other forms of communication. For example, e-mail is less intrusive than a telephone call because the recipient of an e-mail message may wait until a convenient time to retrieve and respond to the message rather than being immediately interrupted. Another advantage of e-mail is the ability to communicate with large groups of people by sending a single e-mail message to multiple recipients. Still another advantage of e-mail is the ability of attaching documents in electronic format to an e-mail message.
E-mail messages are composed in the context of a xe2x80x9cform.xe2x80x9d A form is an object that is used to display a message in a structured format. An e-mail form typically provides a plurality of fields, including an address field, a xe2x80x9cFromxe2x80x9d field, a xe2x80x9cSubjectxe2x80x9d field, a xe2x80x9cccxe2x80x9d field, and a xe2x80x9cBodyxe2x80x9d field. The user of the e-mail system composes the message by entering data into some or all of the fields on the form.
E-mail forms typically incorporate verbs, which are commands that a form is capable of executing. Typical verbs include commands such as reply, forward, open, and print. For example, a recipient may generate a reply to an e-mail message by clicking on a reply button. In response to the reply command, the e-mail program carries out the instructions associated with the xe2x80x9creplyxe2x80x9d verb. This includes copying the data in the address field of the incoming message to the xe2x80x9cFromxe2x80x9d field of the reply, copying the data in the xe2x80x9cFromxe2x80x9d field of the incoming message to the address field of the reply, and adding xe2x80x9cRe:xe2x80x9d before the data in the xe2x80x9cSubjectxe2x80x9d field.
Although e-mail provides a valuable and useful tool, current e-mail systems are not without their drawbacks. For instance, an e-mail system must have a unique, specific destination address in order to deliver an e-mail message to the correct recipient. In many cases, e-mail addresses are not intuitive derivatives of a person""s name and may be difficult for the user to remember. Also, because the address must be specific, a typographical error entered by the user will result in the message being misdelivered or not delivered at all.
Before the e-mail system can send a message, all of the names in the address field must be xe2x80x9cresolved,xe2x80x9d or matched with the valid address of a particular user. In most e-mail systems, the recipients"" names are resolved when the user invokes the xe2x80x9csendxe2x80x9d command or a xe2x80x9ccheck namesxe2x80x9d command. In either case, the e-mail system resolves unambiguous names without user intervention and prompts the user to resolve ambiguous names by selecting the correct name from a short list.
As an example, Jim Peterson is sending an e-mail message to his friend Dave. In the address field of the message, Jim enters the name xe2x80x9cDave.xe2x80x9d An address book or directory, which is stored on the server, is used by the e-mail system to match the name xe2x80x9cDavexe2x80x9d with the appropriate recipient. In a small company or organization with only one user named Dave, entering xe2x80x9cDavexe2x80x9d in the address field would be unambiguous to the e-mail system and the e-mail system would match the name xe2x80x9cDavexe2x80x9d to the correct, unique e-mail address. However, in a company or organization with multiple Daves, the name must be resolved to the correct Dave. This method of resolving names is inconvenient because the user must execute an extra step to resolve the names before the message is sent. This is especially inconvenient if a user only sends mail to one xe2x80x9cDavexe2x80x9d although the address book contains many xe2x80x9cDaves.xe2x80x9d Also, as companies and organizations expand, the e-mail system address book continues to grow, thereby increasing the chances for ambiguity. The potential is created for false matches resulting in misdirected e-mail.
One attempt to simplify the process of resolving names is to implement a feature that monitors the user""s typing of characters in the address field and volunteers the full name when the user types enough characters to uniquely identify one recipient. Alternatively, in another attempted solution, the user can type in a number of characters and get a list of recipients whose name begins with the characters typed in by the user. Neither of these solutions provides a satisfactory solution to the problem of resolving names. First, a long string of characters may need to be entered before a unique name is found. Also, for certain names, such as John Smith, a unique name may never be found even if the entire name is entered. In addition, the user must enter the name exactly as it appears in the directory even if one part of a name is more unique than another part of a name. For example, xe2x80x9cMacDonaldxe2x80x9d is probably more unique than xe2x80x9cJohn,xe2x80x9d but a user must enter the name as xe2x80x9cJohn Mac . . . xe2x80x9d if that is how the name appears in the directory. Furthermore, these attempted solutions require the user""s attention to complete the resolution of the names.
In addition to the drawbacks associated with verifying e-mail addresses, current e-mail systems do not provide the user with an effective way to organize and manage the user""s e-mail inbox. Many businesses rely on an e-mail system as one of the main modes of communication between individuals, resulting in users often having to deal with large numbers of e-mail messages. In cases where an e-mail user has received messages that delegate responsibilities or request specific follow-up actions, these messages may easily be lost in a flood of other e-mail messages. Even if a recipient has a manageable amount of e-mail messages in his or her inbox, requests for action are often buried in the body of an e-mail message and the recipient may not realize that an action has been requested.
E-mail systems usually provide only rudimentary mechanisms for identifying and sorting important messages that require some sort of action. For example, one mechanism for identifying and sorting important messages is for the sender of the message to set a priority for the message that the recipient will receive with the message. In the alternative, the sender may provide information about the e-mail message in the subject line. For example, the sender may set the priority as xe2x80x9curgentxe2x80x9d for a respective e-mail message or type xe2x80x9curgentxe2x80x9d in the xe2x80x9cSubjectxe2x80x9d field. However, this mechanism of setting priorities is ineffective because the e-mail message may not require immediate action. The recipient may open and read the message, and then file the message in a xe2x80x9cfollow-upxe2x80x9d folder. Thus, there is the possibility that the recipient will forget to take the action at a later time.
Another mechanism for identifying and sorting important messages is for the recipient of the message to forward the message to himself and change the priority of the message or subject of the message to the priority or subject desired by the recipient. However, re-prioritizing by the recipient suffers from the drawback of the recipient spending extra time and effort to execute the steps of sending a message back to himself. Thus, the previous solutions to organize and identify important e-mail messages, such as those that require action, only achieve adequate results at best.
Another drawback of current e-mail systems is the difficulty in creating and using customized e-mail forms. There are times when a user feels that the fields on an e-mail form simply do not meet their requirements and that it would be useful to add user-specified fields. For example, Jim is working with Shirley to develop a casing for the radio she is designing. E-mail messages containing information about the dimensions of the radio are constantly being sent between the two. Using a normal e-mail message, the information is buried within the message making it difficult to find. As a result, Jim and Shirley would like to create a customized e-mail form with added fields for the length, width, and height of the casing.
Currently, to add fields to an e-mail message, a custom form is created using a separate application program. After the form is created and defined, the form must be placed on a central server for distribution and installed in each user""s form registry. Usually, placing the form on the server must be approved and executed by the management information systems (MIS) department. Thus, placing a form on a server may involve some delay and bureaucratic problems After the form is placed on the server, any user of the form must install the form before an e-mail message using this form may be displayed on their screen. For instance, in the above example, Jim would have to install the form on his computer before receiving an e-mail message from Shirley utilizing the form. Therefore, using a form with user-specified fields may be time-consuming and annoying because the form must be created and placed on a server, and the form must be installed on a user""s computer before the form can be used.
Another drawback of current e-mail systems is an inability to effectively organize responses to an e-mail message from a group of people. For example, when working with a large group, a user is often required to interact with other group members to make decisions. Using an e-mail message to pose a question to a large group reduces the difficulty of contacting each member of the group for their response. Instead of directly contacting each member of the group, one e-mail message requesting a response can be sent to every member of the group. Each recipient types in their response and sends a reply e-mail message to the user. However, the user still has the task of organizing the replies as they are received and tallying the responses to determine the group consensus. Thus, the user is required to open every reply, read it to determine the response, and tally the responses to decide the consensus of the group. Current e-mail systems do not provide a mechanism for automatically tallying the responses to a question. Instead, the user must manually organize the responses, typically by creating folders for each of the different responses, by creating a spreadsheet with the different responses and the number of replies associated with each response, or simply by tracking the responses on paper. However, these solutions require time and effort on the part of the user and do not directly address the issue of tallying responses.
Therefore, there is a need in the art for an e-mail system that is easier to use and provides more useful organizational features than current e-mail systems.
In particular, there is a need for an e-mail system that simplifies the process of resolving recipient addresses and minimizes the input required from the user.
There is also a need for an e-mail system that provides more useful organizational features for the recipient by distinctly identifying important e-mail messages, such as messages that require follow-up action.
There is a further need for an e-mail system that provides the ability to use custom forms with user-specified fields without requiring the forms to be created and stored on a server.
There is still a further need for an e-mail system that provides more useful organizational features by automatically tallying the responses to a question posed to a group of e-mail users.
The present invention satisfies the above described needs by providing an improved system and method for composing, processing, and organizing electronic mail message items. The present invention automatically resolves recipient display names while the user is composing the message. The invention provides multiple options for resolving ambiguous names and automatically creates nicknames based on how ambiguous names are resolved. The present invention also allows a sender or recipient to indicate specific follow-up action associated with a message. The message flag may be accompanied by a due date, which generates reminders and past due notices. The present invention also provides an efficient method for sharing custom e-mail forms with other users. A description of the custom form is transmitted as part of the e-mail message and displayed by the recipient""s computer. The present invention also automatically tallies multiple responses to a query. The sender sends a message that includes a query and specific choices for the response. The recipient creates a reply by selecting one of the predefined choices. When the original sender receives the reply, the sent mail copy of the message is updated to tally the votes.
Generally described, in one aspect, the present invention provides a method for resolving a display name associated with an intended recipient of a message item, which is sent in the context of an electronic mail system. The method includes receiving the display name in an address field and determining whether the display name uniquely matches one of a plurality of registered users of the electronic mail system. If the entered address data uniquely matches one of the registered users, data corresponding to the matching registered user is displayed. Otherwise, ambiguous address data is displayed.
More particularly described, the present invention provides a method for using nicknames to resolve the name of an intended recipient of a message item. The method includes receiving a display name in an address field and determining whether the display name corresponds to a previously stored nickname. If so, nickname data corresponding to a registered user associated with the nickname is displayed. If no nickname is found, the method determines whether the display name uniquely matches one of a plurality of registered users of the electronic mail system. If so, recipient data corresponding to the matching registered user is displayed. If there is no unique match, the ambiguous address data is displayed.
In another aspect, the present invention provides a method for including a flag with the message item, which is transmitted in an electronic mail system. Flag data is received and stored as one of a plurality of message properties. The e-mail message item is then transmitted to a recipient.
The message item can also include a combination of a due date property and the message flag property. The computer receives due date data indicative of a date by which the follow-up action is to be performed and stores the due date data as one of the plurality of properties.
The present invention also provides a method for displaying the status of a follow-up action associated with the message item. The method includes receiving a message item that includes a status property associated with the follow-up action and determining whether the message item includes the status property. If so, the data associated with the status property is received and is displayed in conjunction with the message item.
More particularly described, the present invention provides an improved message item for transmission in an electronic mail system. The message item includes a message flag property and a status property. The message flag property is indicative of a follow-up action associated with the message item. The status property includes status data indicative of whether the follow-up action has been completed by a recipient of the message item.
In yet another aspect, the present invention provides a method for transmitting custom form data as part of a message item. Custom form data is obtained. The custom form data indicates the layout of a custom form comprising a plurality of fields for displaying field data. The custom form data is stored as one of a plurality of properties associated with the message item. Once the message is composed, the message item, including the form property, is transmitted to the recipient.
The present invention also provides a method for receiving a message item that includes custom form data and displaying the message item in a custom form. A message item, which includes a plurality of properties, is received. The method includes determining whether the message item includes a form property. If the message item includes a form property, the custom form data that is stored in the form property is retrieved and the message is displayed in the context of the corresponding form. If the message item does not include a form property, standard form data is retrieved from a form registry and the message item is displayed in the context of the standard form.
In yet another aspect, the present invention provides a method for sending a message item to a plurality of recipients and automatically tallying the responses. A message item is created, and includes a query and a plurality of predefined responses. The message is transmitted to the recipients. When a reply is received, the response included in the reply is automatically tallied.
The original message item can include an autoresponse property. If so, response data corresponding to the predefined responses is received from the sender of the message item. The response data is then stored in the autoresponse property. Responses are tallied by reading identification data in the reply message and locating a sent mail copy of the original message. A voter property is located in the sent mail copy and the reply data is stored in the voter property of the sent mail copy.
More particularly described, the present invention provides a method for selecting one of a plurality of predefined responses in reply to a message item that includes a query. A message is opened and a plurality of voting buttons is displayed. Each voting button corresponds to one of the predefined responses. Input corresponding to the selection of one of the voting buttons is received and a reply message item is created. Data corresponding to the selected voting button is stored in one of the properties of the reply message.
It is therefore an object of the present invention to provide a method for resolving recipient names in the background.
It is a further object of the present invention to simplify the process of resolving ambiguous names and to automatically create nicknames based on how the ambiguous names are resolved.
It is a further object of the present invention to provide a method for specifying a follow-up action and due date associated with a message item.
It is a further object of the present invention to assist the user in managing e-mail messages that include specific follow-up actions.
It is a further object of the present invention to allow e-mail users to create custom e-mail forms and easily share the custom forms with other users.
It is a further object of the present invention to provide a method for soliciting input from a group of e-mail recipients and automatically tallying their responses.
These and other objects, features, and advantages of the present invention may be more clearly understood and appreciated from a review of the following detailed description of the disclosed embodiments and by reference to the appended drawings and claims.